//@version=6
indicator('BURAK AL-SAT V1_Alarmlı', overlay = true, max_lines_count = 500, max_labels_count = 500, max_bars_back = 500)

length = input.int(9, minval = 1, title = 'Hareketli Ortalama Periyodu')
emaLength = input.int(20, minval = 1, title="EMA Periyodu") // Yeni EMA girdisi
mah = ta.ema(high, length)
mal = ta.ema(low, length)
ema = ta.ema(close, emaLength) // EMA'nın hesaplanması
plot(mah, color = color.orange, title = 'Üst Hareketli Ortalama', linewidth = 2, trackprice = true)
plot(mal, color = color.orange, title = 'Alt Hareketli Ortalama', linewidth = 2, trackprice = true)
plot(ema, color = color.blue, title="EMA", linewidth=1) // EMA'yı grafiğe çizdirme


// Heiken Ashi Hesaplaması
var float openha = na
var float closeha = na
openha := na(openha[1]) ? (open[0] + close[0]) / 2 : (openha[1] + closeha[1]) / 2
closeha := close

// Al ve Sat Sinyalleri
AL = openha < closeha
SAT = openha > closeha

// Sinyal Filtreleme, Onay ve Yalnızca Değişimde Sinyal Üretimi
var bool previous_al = false
var bool previous_sat = false
var bool signal_al = false
var bool signal_sat = false
var int last_signal_bar = 0
min_signal_wait = 2

if (AL and not previous_al and close > ema and bar_index > last_signal_bar + min_signal_wait)
    signal_al := true
    signal_sat := false
    previous_al := true
    previous_sat := false
    last_signal_bar := bar_index
else if (SAT and not previous_sat and close < ema and bar_index > last_signal_bar + min_signal_wait)
    signal_al := false
    signal_sat := true
    previous_al := false
    previous_sat := true
    last_signal_bar := bar_index
else
    signal_al := false
    signal_sat := false


// Al ve Sat İşaretçileri
plotshape(signal_al, text = 'AL', location = location.belowbar, style = shape.labelup, size = size.tiny, color = color.green, textcolor = color.white)
plotshape(signal_sat, text = 'SAT', location = location.abovebar, style = shape.labeldown, size = size.tiny, color = color.red, textcolor = color.white)

// === ALERT CONDITIONS ===
alertcondition(signal_al, title="AL Signal Alert", message="BURAK AL-SAT V1: AL sinyali oluştu 🚀")
alertcondition(signal_sat, title="SAT Signal Alert", message="BURAK AL-SAT V1: SAT sinyali oluştu ⚡")
